import Dexie from 'dexie';

interface Video {
  id?: number; // 可选，因为 id 是自增的
  blob: Blob; // 存储视频文件的 Blob
}

// 创建一个名为 "MyDatabase" 的数据库类，继承自 Dexie
class MyDatabase extends Dexie {
  // 显式声明表的类型
  videos: Dexie.Table<Video, number>; // 第一个参数是行类型，第二个参数是主键类型

  constructor() {
    super('MyDatabase');

    // 定义数据库的架构
    this.version(1).stores({
      videos: '++id, file',
    });

    // 初始化表
    this.videos = this.table('videos');
  }
}

const db = new MyDatabase();

export default db;
